package com.enjoyor.soa.traffic.rest.efoms.dubbo.impl;

import org.springframework.stereotype.Component;

import com.alibaba.dubbo.config.annotation.Reference;
import com.enjoyor.soa.traffic.api.service.dubbo.efoms.IDubboAssetInfoService;
import com.enjoyor.soa.traffic.rest.efoms.dubbo.IAssetInfoConsumeService;
import com.enjoyor.soa.traffic.util.pojo.ResultPojo;

@Component
public class AssetInfoConsumeService implements IAssetInfoConsumeService{

	@Reference(version = "1.0.0", timeout = 10000)
	//@Reference(version = "1.0.0", timeout = 10000, url="dubbo://192.168.56.8:21141")
	private IDubboAssetInfoService dubboAssetInfoService;
	/***
	 * 根据输入的查询时间范围查询故障次数的饼形图
	 * beginTime：开始时间
	 * endTime：结束时间；
	 * assentId：资产编号
	 * typeCode：类型编号
	 */
	public ResultPojo getDevFaultPie(String beginTime, String endTime, String assentId, String typeCode) {
		// TODO Auto-generated method stub
		return dubboAssetInfoService.getDevFaultPie(beginTime, endTime, assentId, typeCode);
	}

	/***
	 * 根据输入的查询时间范围查询故障次数折线图
	 * beginTime：开始时间
	 * endTime：结束时间；
	 * assentId：资产编号
	 * typeCode：类型编号
	 */
	public ResultPojo getDevFaultLine(String beginTime, String endTime, String assentId, String typeCode) {
		// TODO Auto-generated method stub
		return dubboAssetInfoService.getDevFaultLine(beginTime, endTime, assentId, typeCode);
	}

	/***
	 * 根据输入的查询时间范围查询故障次数折线图
	 * beginTime：开始时间
	 * endTime：结束时间；
	 * assentId：资产编号
	 * typeCode：类型编号
	 */
	public ResultPojo getDevCheckTimesLine(String beginTime,String endTime,String assentId,String typeCode,String checkResultCode,String searchFlag) {
		// TODO Auto-generated method stub
		return dubboAssetInfoService.getDevCheckTimesLine(beginTime, endTime, assentId, typeCode,checkResultCode,searchFlag);
	}

	/***
	 * 根据输入的条件查询报警类型的饼形图
	 * beginTime：开始时间
	 * endTime：结束时间；
	 * assentId：资产编号
	 * typeCode：类型编号
	 */
	public ResultPojo getDevWarnTypePie(String beginTime,String endTime,String assentId,String typeCode,String warnLevelCode) {
		// TODO Auto-generated method stub
		return dubboAssetInfoService.getDevWarnTypePie(beginTime, endTime, assentId, typeCode,warnLevelCode);
	}
	
	/***
	 * 根据输入的条件查询报警类型的折线图
	 * beginTime：开始时间
	 * endTime：结束时间；
	 * assentId：资产编号
	 * typeCode：类型编号
	 * warnLevelCode:报警等级编号；
	 * earchFlag:时间维度（年、月）
	 */
	public ResultPojo getDevWranTimesLine(String beginTime,String endTime,String assentId,String typeCode,String warnLevelCode,String searchFlag){
		return dubboAssetInfoService.getDevWranTimesLine(beginTime, endTime, assentId, typeCode, warnLevelCode, searchFlag);
	}

	@Override
	public ResultPojo getPortRait(String assentId, String typeCode) {
		// TODO Auto-generated method stub
		return dubboAssetInfoService.getPortRait(assentId, typeCode);
	}

}
